package top.infopub.mgr.bpa.dao;


import java.math.BigDecimal;
import java.util.List;

import org.apache.ibatis.annotations.Param;

import top.infopub.generic.GenericDao;
import top.infopub.mgr.bpa.domain.OtherCotDetailAndSubDomain;
import top.infopub.model.bpa.OtherCotDetail;


/** 其他费合同清单分解子项费用明细(BPA_OTHER_COT_DETAIL) **/
public interface OtherCotDetailDao extends GenericDao<OtherCotDetail, String> {

    /**
     * 批量添加其他费合同清单分解子项费用明细
     */
    void insertByBatch(@Param("list") List<OtherCotDetail> otherCotDetails);

    /**
     * 联合查询明细和子项信息
     */
    List<OtherCotDetailAndSubDomain> selectDetailAndSub(@Param("otherCotId") String otherCotId,
                                                        @Param("feeSmallType1") String feeSmallType1,
                                                        @Param("feeSmallType2") String feeSmallType2);
    
    /**
     * 根据分项名称和父关联id查询开累对内确权总金额
     * @param subName 分项名称
     * @param refId 父关联id
     * @return
     * @see
     */
    BigDecimal selectAddupAmountBySubNameAndRefId(@Param("subName")String subName, 
                                                  @Param("refId")String refId,
                                                  @Param("typeName")String typeName);

}